from dataclasses import dataclass

@dataclass
class LLMClientConfig:
    api_key: str
    base_url: str
    model: str
    provider: str | None = None
    api_version: str | None = None

@dataclass
class LLMMessage:
    role: str
    content: str

@dataclass
class LLMUsage:
    model: str
    input_tokens: int
    output_tokens: int

@dataclass
class LLMResponse:
    result_type: str
    usage: LLMUsage | None = None
    content: str | None = None